Linearity, session types and the Pi calculus

نویسندگان

  • Marco Giunti
  • Vasco Thudichum Vasconcelos
چکیده

We present a reconstruction of session types in a conventional pi calculus. Our session types are qualified as linear or unrestricted. Linearly typed communication channels are guaranteed to occur in exactly one thread, possibly multiple times; afterwards they evolve to unrestricted channels. We equip types with a constructor that describes the two ends of a same communication channel, and propose a type system that is sound with respect to the reduction relation. We then introduce an algorithmic type system which we prove sound and complete with respect to original system. We assess the expressivity of our typing system by providing three distinct encodings (from the pi calculus with polarized variables, from the pi calculus with accept and request primitives, and from the linear pi calculus) into our system. For each language we present operational and typing correspondences, showing that our system e↵ectively subsumes the linear pi calculus as well as foregoing works on session types. In the case of the linear pi calculus we also provide a completeness result, thus proving that linear pi is a sublanguage of ours.

برای دانلود رایگان متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

منابع مشابه

Linearly Refined Session Types

Session types capture precise protocol structure in concurrent programming, but do not specify properties of the exchanged values beyond their basic type. Refinement types are a form of dependent types that can address this limitation, combining types with logical formulae that may refer to program values and can constrain types using arbitrary predicates. We present a pi calculus with assume a...

متن کامل

A Linear Account of Session Types in the Pi Calculus

We present a reconstruction of session types in a conventional pi calculus where types are qualified as linear or unrestricted. Linearly typed communication channels are guaranteed to occur in exactly one thread, possibly multiple times. We equip types with a constructor that denotes the two ends of a same communication channel. In order to assess the flexibility of the new type system, we prov...

متن کامل

Session types in concurrent calculi : higher-order processes and objects

This dissertation investigates different formalisms, in the form of programming language calculi, that are aimed at providing a theoretical foundation for structured concurrent programming based on session types. The structure of a session type is essentially a process-algebraic style description of the behaviour of a single program identifier serving as a communication medium (and usually refe...

متن کامل

LiquidPi: Inferrable Dependent Session Types

The Pi Calculus is a popular formalism for modeling distributed computation. Session Types extend the Pi Calculus with a static, inferable type system. Dependent Types allow for a more precise characterization of the behavior of programs, but in their full generality are not inferable. In this paper, we present LiquidPi an approach that combines the dependent type inferencing of Liquid Types wi...

متن کامل

Linear logic propositions as session types

Throughout the years, several typing disciplines for the π-calculus have been proposed. Arguably, the most widespread of these typing disciplines consists of session types. Session types describe the input/output behavior of processes and traditionally provide strong guarantees about this behavior (i.e., deadlock freedom and fidelity). While these systems exploit a fundamental notion of lineari...

متن کامل

ذخیره در منابع من


  با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید

عنوان ژورنال:
  • Mathematical Structures in Computer Science

دوره 26  شماره 

صفحات  -

تاریخ انتشار 2016